package com.ecommerce.product.service;

import com.ecommerce.common.core.ApiResult;
import com.ecommerce.common.core.PageResult;
import com.ecommerce.product.dto.ProductInfo;
import com.ecommerce.product.dto.ProductQueryRequest;
import com.ecommerce.product.entity.Product;

import java.util.List;

public interface ProductService {
    List<ProductInfo> getProductsByIds(List<Long> productIds);
    
    ApiResult<PageResult<Product>> pageProducts(ProductQueryRequest request);
    
    ApiResult<Product> getProductById(Long id);
    
    ApiResult<Product> createProduct(Product product);
    
    ApiResult<Product> updateProduct(Long id, Product product);
    
    ApiResult<Void> deleteProduct(Long id);
}